﻿<?php

class Stunden
{
	/**
		*/
	public function getUserId($userName)
	{
		$sql = "SELECT m_id FROM std_mitarbeiter WHERE m_lang LIKE '$userName'";
		$result = mysql_query($sql) or die (mysql_error());

		if (mysql_num_rows($result) > 0)
			$userId = mysql_result($result, 0);

		mysql_free_result($result);

		return $userId;
	}

	/**
		*/
	public function showWorkTable($userId, $monat, $jahr)
	{
		$sql = "SELECT *, SUBTIME(SUBTIME(Ende,Begin),Abwesend) AS Stunden FROM std_Arbeitszeit"
				." WHERE MitarbeiterId = '$userId'"
				." AND MONTH(Arbeitstag) = '$monat'"
				." AND YEAR(Arbeitstag) = '$jahr'"
				."ORDER BY Arbeitstag";

		//echo ("$sql<br>");
		$result = mysql_query($sql) or die (mysql_error());
		echo("<div class='showScreen'><br/></div>");
		echo ("<table style='table-layout:fixed;' rules='cols' border='0'>\n");
		echo ("<form action='".$_SERVER['SCRIPT_NAME']."' method='post'>\n");
		echo ("<tr>");
		echo("<th>Tag</th>");
		echo("<th>id</th>");
		echo("<th colspan='1'>Beginn</th>");
		echo("<th colspan='1'>Ende</th>");
		echo("<th colspan='1'>Abwesend</th>");
		echo("<th colspan='1'>Stunden</th>");
		echo("<th>Bemerkung</th>");
		echo("</tr>\n");
		$first = date("Y-m-d", mktime(0, 0, 0, intval($monat), 1, intval($jahr)));
		$even = 0;
		$yetH = intval(date('H'));
		$yeti = intval(date('i'));
		$yets = intval(date('s'));
		while ($tag = mysql_fetch_assoc($result)){
			echo $tag->Begin;
			//nicht gearbeitete tage
			while($tag['Arbeitstag']>$first){
				$sql = "SELECT * FROM std_Feiertag WHERE datum='".$first."'";
				$result_ft = mysql_query($sql) or die (mysql_error());
				$row = mysql_fetch_assoc($result_ft);
				
				if(!empty($row['datum'])){
					echo ("<tr ");
					echo("class='feiertag'>\n");
					$even++;
				}
				else{
					if($even %2 == 0){
						echo ("<tr ");
						echo("class='even'>\n");
						$even++;
					}
					else{
						echo ("<tr ");
						echo("class='odd'>\n");
						$even++;
					}
				}
				$tmp = date_create($first);
				echo ("<td >".usDay2gerDay(date("D", mktime(0, 0, 0, intval(date_format($tmp, "m")), date_format($tmp, "d"), date_format($tmp, "Y"))))." ".usDate2gerDate($first)."</td>\n");
				$first=strftime("%Y-%m-%d", strtotime("$first +1 day"));
				echo ("<td colspan='1' align='center'>---</td>\n");
				echo ("<td colspan='1' align='center'>---</td>\n");
				echo ("<td colspan='1' align='center'>---</td>\n");
				echo ("<td align='center'>---</td>\n");
				echo ("<td align='center'>---</td>\n");
				echo ("<td align='center'>---</td>\n");
				echo ("</tr>\n");
			}
			// ueberpruefe ob der angezeigte Tag der heutige ist
			if ($tag['Arbeitstag'] == date("Y-m-d")) $isAktuell = true;
			else $isAktuell = false;
			// Wochentag
			$sql = "SELECT * FROM std_Feiertag WHERE datum='".$tag['Arbeitstag']."'";
			$result_ft = mysql_query($sql) or die (mysql_error());
			$row = mysql_fetch_assoc($result_ft);
			
			if(!empty($row['datum'])){
				echo ("<tr ");
				echo("class='feiertag'>\n");
				$even++;
			}
			else{
				if($even %2 == 0){
					echo ("<tr ");
					echo("class='even'>\n");
					$even++;
				}
				else{
					echo ("<tr ");
					echo("class='odd'>\n");
					$even++;
				}
			}
			// echo ("<td>".usDate2gerDate($tag['Arbeitstag'])."</td>\n");
			$tmp = date_create($tag['Arbeitstag']);
			//datum
			echo ("<td >".usDay2gerDay(date("D", mktime(0, 0, 0, intval(date_format($tmp, "m")), date_format($tmp, "d"), date_format($tmp, "Y"))))." ".usDate2gerDate($tag['Arbeitstag'])."</td>\n");
			echo ("<input type='hidden' name='arbeitstag' value='".$tag['Arbeitstag']."'>\n");
			$first=strftime("%Y-%m-%d", strtotime("$first +1 day"));
			// Bemerkung
			$bemerkungSql = "SELECT * FROM std_Bemerkung ORDER BY Bemerkung";
			$bemerkungResult = mysql_query($bemerkungSql) or die (mysql_error());
			// aktueller tag
			
			$fromhour = intval(substr($tag['Begin'], 0, 2));
			$fromminutes = intval(substr($tag['Begin'], 3, 2));
			$fromseconds = intval(substr($tag['Begin'], 6, 2));

			$tohour = intval(substr($tag['Ende'], 0, 2));
			$tominutes = intval(substr($tag['Ende'], 3, 2));
			$toseconds = intval(substr($tag['Ende'], 6, 2));
			if ($isAktuell){

				echo ("<td align='center'>");
					echo("<input type='text' name='id' value='".$tag['id']."' size='8' maxsize='8'>");
				echo("</td>");

				echo ("<td align='center'>");
				echo("<div class='showScreen'>");
				echo("<input type='text' name='begin' value='".$tag['Begin']."' size='8' maxsize='8'>");
				echo("</div>");
				echo("<div class='showPrint'>");
				echo($tag['Begin']);
				echo("</div>");
				echo("</td>");
				if($tag['Ende'] == '00:00:00'){
					echo ("<td align='center'>");
					echo("<div class='showScreen'>");
					echo("<input type='text' name='ende' value='".date("H:i:s", time())."' size='8' maxsize='8'>");
					echo("</div>");
					echo("<div class='showPrint'>");
					echo($tag['Ende']);
					echo("</div>");
					echo("</td>");
				}
				else{
					echo("<td align='center'>");
					echo("<div class='showScreen'>");
					echo("<input type='text' name='ende' value='".$tag['Ende']."' size='8' maxsize='8'>");
					echo("</div>");
					echo("<div class='showPrint'>");
					echo($tag['Ende']);
					echo("</div>");
					echo("</td>");
				}
				echo ("<td  align='center'>");
				echo("<div class='showScreen'>");
				echo ("<input type='text' name='abwesend' value='".$tag['Abwesend']."' size='8' maxsize='8'>");
				echo("</div>");
				echo("<div class='showPrint'>");
				echo($tag['Abwesend']);
				echo("</div>");
				echo ("</td>\n");
				if($tag['Ende'] != '00:00:00'){
					echo ("<td align='center' colspan='1'>".$tag['Stunden']."</td>\n");
				}
				else{
					echo ("<td align='center'>---</td>\n");
				}
				echo ("<td align='center'>\n");
				if($tag['Ende'] == '00:00:00'){
					echo("<select name='bemerkung' size='1'>\n");
					echo ("<option value='NULL'></option>\n");
					while ($bemerkungRow = mysql_fetch_assoc($bemerkungResult)){
						if ($bemerkungRow['BemerkungId'] == $tag['Bemerkung']){
							echo ("<option value='".$bemerkungRow['BemerkungId']."' selected='selected'>".$bemerkungRow['Bemerkung']."</option>\n");
						}
						else
							echo ("<option value='".$bemerkungRow['BemerkungId']."'>".$bemerkungRow['Bemerkung']."</option>\n");
					}
					echo ("</select>");
				}
				else{
					$bemerkungSql = "SELECT * FROM std_Bemerkung WHERE BemerkungId='".$tag['Bemerkung']."'";
					$bemerkungResult = mysql_query($bemerkungSql) or die (mysql_error());
					if($bemerkungRow = mysql_fetch_assoc($bemerkungResult)){
						echo ($bemerkungRow['Bemerkung']);
					}
					else{
						echo ("---");
					}
				}
				echo("</td>\n");
				// abmelden
				echo("<td>");
				echo("<div class='showScreen'>");
				echo("<input type='submit' name='stopTimer' value='Speichern'>");
				echo("</div>");
				echo ("<input type='hidden' name='monat' value='$monat'>\n");
				echo ("<input type='hidden' name='jahr' value='$jahr'>\n");
				echo("</td>\n");
			}
			else{
				echo ("<td align='center' colspan='1'>".$tag['id']."</td>\n");
				if($tag['Begin'] == '00:00:00')
					echo ("<td align='center' colspan='1'>---</td>\n");
				else
					echo ("<td align='center' colspan='1'>".$tag['Begin']."</td>\n");
				if($tag['Ende'] == '00:00:00')
					echo ("<td align='center' colspan='1'>---</td>\n");
				else
					echo ("<td align='center' colspan='1'>".$tag['Ende']."</td>\n");
				if($tag['Abwesend'] == '00:00:00')
					echo ("<td align='center' colspan='1'>---</td>\n");
				else
					echo ("<td align='center' colspan='1'>".$tag['Abwesend']."</td>");
				if($tag['Stunden'] == '00:00:00')
					echo ("<td align='center' colspan='1'>---</td>\n");
				else
					echo ("<td align='center' colspan='1'>".$tag['Stunden']."</td>\n");
				echo("<td align='center' >");
				$check = 0;
				while ($bemerkungRow = mysql_fetch_assoc($bemerkungResult)){
					if ($bemerkungRow['BemerkungId'] == $tag['Bemerkung']){
						echo ($bemerkungRow['Bemerkung']);
						$check = 1;
					}
				}
				if(!$check) echo ("---");
				echo("</td>\n");
			}
			mysql_free_result($bemerkungResult);
			echo ("</tr>\n");
		}
		$last = date("Y-m-d", mktime(0, 0, 0, intval($monat), date("t", mktime(0, 0, 0, intval($monat), 1, intval($jahr))), intval($jahr)));
		while($last>=$first){
			$sql = "SELECT * FROM std_Feiertag WHERE datum='".$first."'"; 
				$result_ft = mysql_query($sql) or die (mysql_error());
				$row = mysql_fetch_assoc($result_ft);
				
				if(!empty($row['datum'])){
					echo ("<tr ");
					echo("class='feiertag'>\n");
					$even++;
				}
				else{
					if($even %2 == 0){
						echo ("<tr ");
						echo("class='even'>\n");
						$even++;
					}
					else{
						echo ("<tr ");
						echo("class='odd'>\n");
						$even++;
					}
				}
				$tmp = date_create($first);
				echo ("<td >".usDay2gerDay(date("D", mktime(0, 0, 0, intval(date_format($tmp, "m")), date_format($tmp, "d"), date_format($tmp, "Y"))))." ".usDate2gerDate($first)."</td>\n");
				$first=strftime("%Y-%m-%d", strtotime("$first +1 day"));
				echo ("<td colspan='1' align='center'>---</td>\n");
				echo ("<td colspan='1' align='center'>---</td>\n");
				echo ("<td colspan='1' align='center'>---</td>\n");
				echo ("<td align='center'>---</td>\n");
				echo ("<td align='center'>---</td>\n");
				echo ("<td align='center'>---</td>\n");
				echo ("</tr>\n");
		}
		echo ("</form>\n");
		echo ("</table>\n");
		mysql_free_result($result);
	}

	public function changeDay($day){
		$sql = "SELECT * FROM std_Arbeitszeit WHERE id='$day'";
		$result = mysql_query($sql) or die (mysql_error());

		echo ("<table style='table-layout:fixed;' border='0'>\n");
		echo ("<form action='".$_SERVER['SCRIPT_NAME']."' method='post'>\n");
		echo ("<tr>");
		echo("<th>Tag</td>");
		echo("<th colspan='1'>Beginn</th>");
		echo("<th colspan='1'>Ende</th>");
		echo("<th colspan='1'>Abwesend</th>");
		echo("<th>Bemerkung</th>");
		echo("</tr>\n");
		echo("<tr>");
		if($tag = mysql_fetch_assoc($result)){
			$tmp = date_create($tag['Arbeitstag']);
			echo ("<td >".usDay2gerDay(date("D", mktime(0, 0, 0, intval(date_format($tmp, "m")), date_format($tmp, "d"), date_format($tmp, "Y"))))." ".usDate2gerDate($tag['Arbeitstag'])."</td>\n");
			echo("<td>");
			//beginn
			echo("<input type='text' name='beginn' value='".$tag['Begin']."' size='8' maxsize='8'></td>");
			//ende
			echo("<td align='center'>");
				echo("<input type='text' name='ende' value='".$tag['Ende']."' size='8' maxsize='8'>");
			echo("</td>");
			//abwesend
			echo ("<td  align='center'>");
			echo ("<input type='text' name='abwesend' value='".$tag['Abwesend']."' size='8' maxsize='8'>");
			echo ("</td>\n");
			//bemerkung
			echo ("<td align='center'>\n<select name='bemerkung' size='1'>\n");
			$bemerkungSql = "SELECT * FROM std_Bemerkung ORDER BY Bemerkung";
			$bemerkungResult = mysql_query($bemerkungSql) or die (mysql_error());
			echo ("<option value='NULL'>---</option>\n");
			while ($bemerkungRow = mysql_fetch_assoc($bemerkungResult)){
				if ($bemerkungRow['BemerkungId'] == $tag['Bemerkung']){
					echo ("<option value='".$bemerkungRow['BemerkungId']."' selected='selected'>".$bemerkungRow['Bemerkung']."</option>\n");
				}
				else
					echo ("<option value='".$bemerkungRow['BemerkungId']."'>".$bemerkungRow['Bemerkung']."</option>\n");
			}
			echo ("</select></td>\n");
			// abmelden
			mysql_free_result($bemerkungResult);
		}
		echo("</tr>");
		echo("<tr>");
		echo("<td>");
		echo ("<input type='submit' name='aendern' value='Speichern'>\n");
		echo ("<input type='hidden' name='day' value='$day'>\n");
		echo("</td>\n");
		echo ("</tr>\n");
		echo ("</form>\n");
		echo ("</table>\n");
		mysql_free_result($result);
	}

	public function showWorkDays($userId, $monat, $jahr)
	{
		$sql = "SELECT *, SUBTIME(SUBTIME(Ende,Begin),Abwesend) AS Stunden FROM std_Arbeitszeit"
				." WHERE MitarbeiterId = '$userId'"
				." AND MONTH(Arbeitstag) = '$monat'"
				." AND YEAR(Arbeitstag) = '$jahr'"
				." ORDER BY Arbeitstag";

		$result = mysql_query($sql)
		or die (mysql_error());

		echo ("<table style='table-layout:fixed;' border='0'>\n");
		echo ("<form action='".$_SERVER['SCRIPT_NAME']."' method='post'>\n");
		echo("<tr>");
		echo("<td>");
		echo("<select name='tag'>");
		while ($tag = mysql_fetch_assoc($result)){
			// ueberpruefe ob der angezeigte Tag der heutige ist
			if ($tag['Arbeitstag'] == date("Y-m-d")) $isAktuell = true;
			else $isAktuell = false;
			// Wochentag
			$tmp = date_create($tag['Arbeitstag']);
			//datum
			echo ("<option value='".$tag['id']."'>".usDay2gerDay(date("D", mktime(0, 0, 0, intval(date_format($tmp, "m")), date_format($tmp, "d"), date_format($tmp, "Y"))))." ".usDate2gerDate($tag['Arbeitstag'])."</option>\n");
		}
		echo("</select>");
		echo("</td>");
		echo("</tr>");
		echo("<tr>");
		echo ("<td><input type='submit' name='aendern' value='Auswahl'></td>\n");
		echo ("</tr>\n");
		echo ("</form>\n");
		echo ("</table>\n");
		mysql_free_result($result);
	}

	/**
		*/
	public function getWeekSum($userId, $woche, $jahr)
	{
		$sql = "SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(SUBTIME(SUBTIME(Ende, Begin),Abwesend)))) FROM std_Arbeitszeit"
				." WHERE MitarbeiterId = '$userId' "
				." AND WEEK(Arbeitstag,1) = '$woche'"
				." AND YEAR(Arbeitstag) = '$jahr'"
				." AND Ende<>'00:00:00'";
		//echo ("$sql<br>");

		$result = mysql_query($sql ) or die (mysql_error());
		$row = mysql_fetch_row($result);
		$stunden = $row[0];
		mysql_free_result($result);

		return $stunden;
	}

	/**
		*/
	public function getMonthSum($userId, $monat, $jahr)
	{
		$sql = "SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(SUBTIME(SUBTIME(Ende, Begin),Abwesend)))) AS time FROM std_Arbeitszeit"
				." WHERE MitarbeiterId = '$userId' "
				." AND MONTH(Arbeitstag) = '$monat'"
				." AND YEAR(Arbeitstag) = '$jahr'"
				." AND Ende<>'00:00:00'";
		//echo ("$sql<br>");

		$result = mysql_query($sql) or die (mysql_error());
		$row = mysql_fetch_row($result);
		$stunden = $row[0];
		mysql_free_result($result);

		return $stunden;
	}

	/**
		*/
	public function createNewWorkday($userId){
		$result = mysql_query("SELECT * FROM std_Arbeitszeit WHERE Arbeitstag=CURDATE() AND MitarbeiterId='".$userId."'") or die("CreateWorkDay: ".mysql_error());
		if(mysql_num_rows($result) == 0){
			$sql = "INSERT INTO std_Arbeitszeit VALUES ('', CURDATE(), $userId, CURTIME(), 0, 0, NULL)";
		}
// 		else{
// 			echo("<b>Arbeitstag schon vorhanden!</b>");
// 			$_SESSION['stopped'] = '1';
// 		}
		mysql_query($sql);
	}

	/**
		*/
	public function getSupplementMenu($userId, $monat, $jahr)
	{
		echo ("<div>Bitte Datum des nachzutragenden Termins angeben:</div>\n");

		echo ("<form action='".$_SERVER['SCRIPT_NAME']."' method='post'>\n");
		echo ("<table>\n");
		echo("<tr>");
		echo("<td colspan='4'>");
		echo("<input type='text' name='day' class='tcal' value='' />");
		echo("</td>");
		echo("</tr>");
		echo ("<tr>");
		echo("<th>Beginn</th>");
		echo("<th>Ende</th>");
		echo("<th>Abwesend</th>");
		echo("<th>Bemerkung</th>");
		echo("</tr>\n");
		echo("<tr>");
		echo ("<td  align='center'>");
		echo("<input type='text' name='beginn' value='00:00:00' size='8' maxsize='8'>");
		echo("</td>");
		echo("<td align='center'>");
		echo("<input type='text' name='ende' value='00:00:00' size='8' maxsize='8'>");
		echo("</td>");
		echo ("<td  align='center'>");
		echo ("<input type='text' name='abwesend' value='00:00:00' size='8' maxsize='8'>");
		echo ("</td>\n");
		echo ("<td align='center'>\n<select name='bemerkung' size='1'>\n");
		$bemerkungSql = "SELECT * FROM std_Bemerkung ORDER BY Bemerkung";
		$bemerkungResult = mysql_query($bemerkungSql) or die (mysql_error());
		echo ("<option value='NULL'>---</option>\n");
		while ($bemerkungRow = mysql_fetch_assoc($bemerkungResult)){
			if ($bemerkungRow['BemerkungId'] == $tag['Bemerkung']){
				echo ("<option value='".$bemerkungRow['BemerkungId']."' selected='selected'>".$bemerkungRow['Bemerkung']."</option>\n");
			}
			else
				echo ("<option value='".$bemerkungRow['BemerkungId']."'>".$bemerkungRow['Bemerkung']."</option>\n");
		}
		echo ("</select></td>\n");
		// abmelden
		mysql_free_result($bemerkungResult);
		echo("</tr>");
		echo("<tr>");
		echo ("<td><input type='submit' name='nachtrag' value='Speichern'></td>\n");
		echo ("</tr>\n");
		echo ("</table>\n");
		echo ("</form>\n");
	}

	/**
		*/
	public function supplementWorkday($userId, $day, $begin, $end, $away, $comment){	
	
	if(strlen($away)== 2 || strlen($away)== 4){
		if(strlen($away)== 2){
			$away = "00:".$away.":00";
		}
		else{
			$away = $away."00";
		}
	}
	//2stellig in minuten + 4stellig in std+min
	if(strlen($begin)== 2 || strlen($begin)== 4){
		if(strlen($begin)== 2){
			$begin = "00:".$begin.":00";
		}
		else{
			$begin = $begin."00";
		}
	}
	//2stellig in minuten + 4stellig in std+min
	if(strlen($end)== 2 || strlen($end)== 4){
		if(strlen($end)== 2){
			$end = "00:".$end.":00";
		}
		else{
			$end = $end."00";
		}
	}
		$sql = "SELECT * FROM std_Arbeitszeit WHERE MitarbeiterId='$userId' AND Arbeitstag='$day'";
		$result = mysql_query($sql) or die (mysql_error());
		$donehere = 0;
		while($res = mysql_fetch_assoc($result)){
			$fromhournew = substr($begin, 0, 2);
			$fromminutesnew = substr($begin, 3, 2);
			$fromsecondsnew = substr($begin, 6, 2);

			$tohournew = substr($end, 0, 2);
			$tominutesnew = substr($end, 3, 2);
			$tosecondsnew = substr($end, 6, 2);

			$oldbegin = $res['Begin'];
			$fromhourold = substr($oldbegin, 0, 2);
			$fromminutesold = substr($oldbegin, 3, 2);
			$fromsecondsold = substr($oldbegin, 6, 2);
			$oldend = $res['Ende'];
			$tohourold = substr($oldend, 0, 2);
			$tominutesold = substr($oldend, 3, 2);
			$tosecondsold = substr($oldend, 6, 2);
			if ( 
			     (	    $fromhournew  < $fromhourold 
				|| ($fromhournew == $fromhourold && $fromminutesnew  < $fromminutesold)
				|| ($fromhournew == $fromhourold && $fromminutesnew == $fromminutesold && $fromsecondsnew <= $fromsecondsold) 
			     ) 
			     &&
			     (	    $tohournew  > $fromhourold 
				|| ($tohournew == $fromhourold && $tominutesnew  > $fromminutesold)
				|| ($tohournew == $fromhourold && $tominutesnew == $fromminutesold && $tosecondsnew >= $fromsecondsold) 
			     )
			   ||
			     (	    $fromhourold  < $fromhournew 
				|| ($fromhourold == $fromhournew && $fromminutesold  < $fromminutesnew)
				|| ($fromhourold == $fromhournew && $fromminutesold == $fromminutesnew && $fromsecondsold <= $fromsecondsnew) 
			     ) 
			     &&
			     (	    $tohourold  > $fromhournew 
				|| ($tohourold == $fromhournew && $tominutesold  > $fromhournew)
				|| ($tohourold == $fromhournew && $tominutesold == $fromminutesnew && $tosecondsold >= $fromsecondsnew) 
			     )
			   )
			{
			  $donehere = $donehere || $donehere;
			}
		}
		if (!$donehere) {
		  $sql = "INSERT INTO std_Arbeitszeit VALUES ('', '$day', '$userId', '$begin', '$end', '$away', '$comment')";
		  $result = mysql_query($sql) or die (mysql_error());
		}
		else
		  echo("<b>Dieser Tag ist bereits vorhanden!</b><br/>");
		echo ("<div>Möchten Sie einen weiteren Termin nachtragen?</div>\n");

		echo ("<form action='".$_SERVER['SCRIPT_NAME']."' method='post'>\n");
		echo ("<table>\n");
		echo("<tr>");
		echo ("<input type='submit' value='Eintrag nachtragen' name='nachtrag' />\n");
		echo ("</tr>\n");
		echo ("</table>\n");
		echo ("</form>\n");
	}

	/**
		*/
	public function updateWorkday($userId, $arbeitstag, $begin, $ende, $abwesend, $bemerkung)
	{
		echo "UPDATE std_Arbeitszeit SET Begin = '$begin', Ende = '$ende', Abwesend = '$abwesend', Bemerkung = '$bemerkung'"
		. " WHERE Arbeitstag = '$arbeitstag' AND MitarbeiterId = '$userId'";
		$begin = $this->asTime($begin);
		$ende = $this->asTime($ende);
		$abwesend = $this->asTime($abwesend);
		$sql = "UPDATE std_Arbeitszeit SET Begin = '$begin', Ende = '$ende', Abwesend = '$abwesend', Bemerkung = '$bemerkung'"
		. " WHERE Arbeitstag = '$arbeitstag' AND MitarbeiterId = '$userId'";

		$sql = "SELECT Bemerkung FROM std_Arbeitszeit WHERE MitarbeiterId = '$userId' AND Arbeitstag = '$arbeitstag'";
		$result = mysql_query($sql) or die (mysql_error());
		$row = mysql_fetch_row($result);
		$bemerkungDB = $row[0];
		mysql_free_result($result);

		if (empty($bemerkungDB) && $bemerkung >= 1)
		{
			$sql = "SELECT m_stundenProWoche FROM std_mitarbeiter WHERE m_id = '$userId'";
			$result = mysql_query($sql) or die(mysql_error());
			$row = mysql_fetch_row($result);
			$timeArray = strptime($row[0], "%H:%M:%S");
			//echo ("<br><br>IMPLODE: ".implode($timeArray)."<br><br>");
			mysql_free_result($result);

			$begin = "8:00";
			$addTime = $timeArray['tm_hour'].":".$timeArray['tm_min'];
			$sql = "UPDATE std_Arbeitszeit SET Begin = '$begin', Ende = ADDTIME('$begin', '$addTime'), Abwesend = '$abwesend', Bemerkung = '$bemerkung'"
			. " WHERE Arbeitstag = '$arbeitstag' AND MitarbeiterId = '$userId'";
		}
		else
		{
			$sql = "UPDATE std_Arbeitszeit SET Begin = '$begin', Ende = '$ende', Abwesend = '$abwesend', Bemerkung = '$bemerkung'"
			. " WHERE Arbeitstag = '$arbeitstag' AND MitarbeiterId = '$userId'";
		}

		//echo "$sql<br>";
		mysql_query($sql) or die (mysql_error());
	}

	/**
		*/
	public function startTimer($userId)
	{
		$sql = "UPDATE std_Arbeitszeit SET Abwesend = ADDTIME(Abwesend, SUBTIME(CURTIME(), Ende)) WHERE Arbeitstag = CURDATE() AND MitarbeiterId = '$userId'";
		mysql_query($sql);
	}

	/**
		*/
	public function stopTimer($userId, $id, $beginn, $ende, $abwesend, $bemerkung){
		//2stellig in minuten + 4stellig in std+min
		if(strlen($abwesend)== 2 || strlen($abwesend)== 4){
			if(strlen($abwesend)== 2){
				$abwesend = "00:".$abwesend.":00";
			}
			else{
				$abwesend = $abwesend."00";
			}
		}
		//4stellig in std+min
		if(strlen($beginn)== 4){
			$beginn = $beginn."00";
		}
	//4stellig in std+min
		if(strlen($ende)== 4){
			$ende = $ende."00";
		}
		$sql = "UPDATE std_Arbeitszeit SET Begin='$beginn', Ende='$ende', Abwesend='$abwesend', Bemerkung='$bemerkung' WHERE Arbeitstag = CURDATE() AND MitarbeiterId ='$userId' AND id ='$id'";
		mysql_query($sql) or die(mysql_error());
	}

	/**
		*/
	public function getHoursPerDay($userId)
	{
		$sql = "SELECT stunden FROM std_MitarbeiterZuGruppe mzg WHERE mzg.id = '$userId'";
		$result = mysql_query($sql) or die (mysql_error());
		$row = mysql_fetch_row($result);
		$zeit = $row[0];
		mysql_free_result($result);
		//woche auf tag umrechnen
		return $this->divTime($zeit, '5');
	}

	/**
		*/
	public function countWorkdays($userId, $monat, $jahr){
		$sql = "SELECT COUNT(*) FROM std_Arbeitszeit WHERE MitarbeiterId = '$userId'"
		." AND MONTH(Arbeitstag) = '$monat'"
		." AND YEAR(Arbeitstag) = '$jahr'";

		$result = mysql_query($sql) or die(mysql_error());
		$row = mysql_fetch_row($result);
		$tage = $row[0];
		mysql_free_result($result);

		return $tage;
	}

	/**
		*/
	public function showOverviewHours($userId, $monat, $jahr){
		echo ("<br />\n");
		echo ("<table>\n");
		echo ("<tr>\n");
		echo ("<td>");
		echo("<div class='showScreen'>");
		echo("Gearbeitete Tage im Monat: &nbsp;");
		echo("</div>");
		echo("</td>");
		echo("<td>");
		echo("<div class='showScreen'>");
		echo($this->countWorkdays($userId, $monat, $jahr));
		echo("</div>");
		echo("</td>\n");
		echo ("</tr>\n");
		echo ("<tr>\n");
		$workday = $this->getHoursPerDay($userId);
		echo ("<td>Stunden/Tag: &nbsp;</td><td>"
				.$workday
				."</td>\n");
		echo ("</tr>\n");
		echo ("<tr>\n");
		$days = $this->getWorkdays($monat, $jahr);
		$work = $this->getMonthSum($userId, $monat, $jahr);
		//$freizeit = $this->countFreizeit($userId, $jahr, $monat);
		//$freizeit = $this->mulTime($workday, $freizeit);
		echo ("<td>Abgeleistete Stunden: &nbsp;</td><td>"
				//.$this->addTime($work, $freizeit)
				.$work
				."</td>\n");
		echo ("</tr>\n");
		echo ("<tr>\n");
		$soll = $this->getDebit($userId, $monat, $jahr);
		$urlaub = $this->countUrlaub($userId, $jahr, $monat);
		$days2 = $days - $urlaub;
		echo ("<td>Arbeitszeit-Soll: &nbsp;</td><td>"
				.$soll
				." (".$days2."/".$days." Arbeitstage)</td>\n");
		echo ("</tr>\n");
		echo ("<tr>\n");
		echo ("<td>&Uuml;bertrag Vormonat(e):</td><td>"
				.$this->getBalance($userId, $monat, $jahr)
				."</td>\n");
		echo ("</tr>\n");
		echo ("<tr>\n");
			
		echo ("<td><u><b>Gesamt:</b></u></td><td><u>");		
		//arbeitszeit + übertrag vormonat
		$std = $this->getHours($userId, $monat, $jahr);
		//balance + freizeit
		//$std =  $this->addTime(-$freizeit, $std);
		//arbeitszeit soll - abgeleistete stunden
		$sek1 = $this->toSec($std);
		$sek2 = $this->toSec($soll);
		$sek1 = $sek1 - $sek2;
		$gesamt = $this->toTime($sek1);
		//$gesamt = $this->addTime($std, $soll);
		list($hour1, $min1) = split(':', $gesamt);
		$bruch = round($min1/60,2);
		if($hour1 <0) $bruch = $bruch - $hour1;
		else $bruch = $bruch + $hour1;

			echo("<b>".$hour1." Stunden ".$min1." Minuten (".$bruch." Stunden)</b>");
		
		echo("</u></td>\n");
		echo ("</tr>\n");
		echo ("</table>\n");
	}

	/**
		*/
	public function showSliderMonth($userId, $script, $monat, $jahr)
	{
		echo("<div class='showPrint'>");
		echo("<b>".$this->showMonatsName($monat)." ".$jahr."</b> ".$_SESSION["username"]);
		echo("</div>");
		echo("<div class='showScreen'>");
		echo($this->showMonatsName($monat)." ".$jahr);
		echo("<br/>");
		echo ("<a href='$script?userId=$userId&monat=".$this->prevMonth($monat)."&jahr=".$this->prevYear($monat,$jahr)."' title='Einen Monat zur&uuml;ck'> << zur&uuml;ck</a>\n");
		echo ("| <a href='$script?userId=$userId' title='Zum aktuellen Monat'>O</a> |\n");
		echo ("<a href='$script?userId=$userId&monat=".$this->nextMonth($monat)."&jahr=".$this->nextYear($monat, $jahr)."' title='Einen Monat vor'>vor >> </a>\n");
		echo("<br/>");
		echo("</div>");
	}
	
	public function showSliderYear($userId, $script, $jahr)
	{
		echo("<div class='showPrint'>");
		echo("<b> ".$jahr."</b> ");
		echo("</div>");
		echo("<div class='showScreen'>");
		echo("<br/>");
		echo ("<a href='$script?jahr=".$this->prevYear(intval(1),$jahr)."' title='Ein Jahr zur&uuml;ck'> << zur&uuml;ck</a>\n");
		echo ("| <a href='$script' title='Zum aktuellen Jahr'>O</a> |\n");
		echo ("<a href='$script?jahr=".$this->nextYear(intval(12), $jahr)."' title='Ein Jahr vor'>vor >> </a>\n");
		echo("<br/>");
		echo("</div>");
	}

	/**
		*/
	public function showEmployeeMenu($script, $userId, $monat, $jahr){
		echo ("<form action='$script' method='post'>\n");
		?>
<div class="showScreen">
	<?php 
	echo ("<input type='submit' value='Anmelden' name='neu' />\n");
	echo ("<input type='submit' value='Eintrag nachtragen' name='nachtrag' />\n");
	echo ("<input type='submit' value='Eintrag ändern' name='aendern' />\n");
	echo ("&nbsp;&nbsp;&nbsp;&nbsp;<input type='submit' value='Monat abschlie&szlig;en' name='abschluss' />\n");
	echo("<input type='hidden' name='monat' value='".$monat."'>");
	echo("<input type='hidden' name='jahr' value='".$jahr."'>");
	?>
	</div>
	<?php
		echo("<div class='showScreen'>");
		$result = $this->getCategoriesByUserId($userId);
		if(mysql_num_rows($result) == '0') echo("Keiner Gruppe zugewiesen");
		else{
			echo ("<select name='cat'>");
				if(mysql_num_rows($result) > '1') echo("<option value=''>Gruppenauswahl:</option>");
				while($cat = mysql_fetch_assoc($result)){
					echo("<option value='".$cat['cat']."'>".$cat['name']."</option>");
				}	
			echo("</select>");
		}
		echo ("&nbsp;&nbsp;&nbsp;&nbsp;<input type='submit' value='Gruppe ändern' name='catChange' />\n");
		echo ("</form>\n");
		mysql_free_result($result);
		echo("</div>");
	}

	Public function back(){
		if (isset($_REQUEST['monat'])) $monat = $_REQUEST['monat'];
		else $monat = date('n');
		if (isset($_REQUEST['jahr'])){
			$jahr = $_REQUEST['jahr'];
		}
		else{
			$jahr = date('Y');
		}
		echo ("<form action='$script' method='post'>\n");
		echo ("<div>\n");
		echo ("<input type='submit' value='Zurück' name='back' />\n");
		echo ("<input type='hidden' name='monat' value='$monat'>\n");
		echo ("<input type='hidden' name='jahr' value='$jahr'>\n");
		echo ("</div><br />\n");
		echo ("</form>\n");
	}
	/**
		*/
	public function getWorkdays($monat, $jahr)
	{
		$sql = "SELECT Arbeitstage FROM std_Arbeitstage WHERE Monat = '$monat'"
		." AND Jahr = '$jahr'";
		$result = mysql_query($sql) or die(mysql_error());
		$row = mysql_fetch_row($result);
		$tage = $row[0];
		mysql_free_result($result);
		return $tage;
	}

	/**
		*/
	public function getDebit($userId, $monat, $jahr)
	{
		$stunden = $this->getHoursPerDay($userId);
		$tage = $this->getWorkdays($monat, $jahr);
		$urlaub = $this->countUrlaub($userId, $jahr, $monat);
		$krank = 0; //$this->countKrank($userId, $jahr, $monat);
		$gesamt = $this->mulTime($stunden, $tage - $urlaub);
		return $gesamt;
	}

	/**
	 */
	public function getHours($userId, $monat, $jahr)
	{
		$tmpM = $this->prevMonth($monat);
		$tmpJ = $this->prevYear($monat, $jahr);

		$sql = "SELECT ADDTIME(SEC_TO_TIME(SUM(TIME_TO_SEC(SUBTIME(SUBTIME(Ende, Begin),Abwesend)))), stunden) From std_Arbeitszeit, std_Monatsabschluss"
				." WHERE MitarbeiterId = '$userId' "
				." AND userId = '$userId' "
				." AND MONTH(Arbeitstag) = '$monat'"
				." AND monat = '$tmpM'"
				." AND YEAR(Arbeitstag) = '$jahr'"
				." AND jahr = '$tmpJ'"
				." AND Ende<>'00:00:00'";;

		//		echo ("$sql<br>");

		$result = mysql_query($sql) or die (mysql_error());
		$row = mysql_fetch_row($result);
		$stunden = $row[0];
		mysql_free_result($result);
		return $stunden;
	}

	/**
		*/
	public function getBalance($userId, $monat, $jahr)
	{
		$tmpM = $this->prevMonth($monat);
		$tmpJ = $this->prevYear($monat, $jahr);
		$sql = "SELECT stunden FROM std_Monatsabschluss WHERE userId = '$userId'"
		." AND monat = '$tmpM'"
		." AND jahr = '$tmpJ'";
		//echo ("$sql<br>");
		$result = mysql_query($sql) or die(mysql_error());
		$stunden = "0:00";

		// kein uebertrag aus dem letzen Monat
		if (mysql_num_rows($result) > 0)
		{
			$row = mysql_fetch_row($result);
			$stunden = $row[0];
		}

		mysql_free_result($result);

		return $stunden;
	}


	/**
		*/
	public function askForPersisting($script)
	{
		echo ("Sind Sie sicher den Monat abschliessen zu wollen? Dieser Vorgang ist permanent und kann nicht korigiert werden.\n");
		echo ("<form action='$script' method='post'>\n");
		echo ("<input type='submit' name='persist' value='Speichern'>\n");
		echo ("<input type='hidden' name='abschluss'>\n");
		echo ("<input type='reset' value='Abbrechen'>\n");
		echo ("</form>\n");
	}

	/**
		*/
	public function persistMonth($userId, $monat, $jahr){
		//return if there is no entry
		$days = $this->getWorkdays($monat, $jahr);
		$workday = $this->getHoursPerDay($userId);
		$work = $this->getMonthSum($userId, $monat, $jahr);
		$freizeit = $this->countFreizeit($userId, $jahr, $monat);
		$freizeit = $this->mulTime($workday, $freizeit);
		$soll = $this->getDebit($userId, $monat, $jahr);
		$urlaub = $this->countUrlaub($userId, $jahr, $monat);
		$days2 = $days - $urlaub;
		//arbeitszeit + übertrag vormonat
		$std = $this->getHours($userId, $monat, $jahr);
		//balance + freizeit
		//$std =  $this->addTime(-$freizeit, $std);
		//arbeitszeit soll - abgeleistete stunden
		$sek1 = $this->toSec($std);
		$sek2 = $this->toSec($soll);
		$sek1 = $sek1 - $sek2;
		$gesamt = $this->toTime($sek1);
		$tmp = $monat;
		$actual = date('n');
		$actualYear = date('Y');
		if($actualYear > $jahr){
			while($monat <= 12){
				$query = "SELECT * FROM std_Monatsabschluss WHERE userId='$userId' AND monat='$monat' AND jahr='$jahr'";
				$result = mysql_query($query) or die(mysql_error());
				if($res = mysql_fetch_assoc($result)){
					// $sql = "UPDATE Monatsabschluss SET stunden=SUBTIME(ADDTIME('$stunden', '$balance'), '$debit')
					// WHERE userId='$userId' AND monat='$monat'";
					$sql = "UPDATE std_Monatsabschluss SET stunden='$gesamt'
					WHERE userId='$userId' AND monat='$monat' AND jahr='$jahr'";
				}
				else{
					$sql = "INSERT INTO std_Monatsabschluss VALUES"
									." ('', '$userId', '$monat', '$jahr', '$gesamt')";
				}
				mysql_query($sql) or die ($sql."--".mysql_error());
				//return if there is no entry
				$days = $this->getWorkdays($monat, $jahr);
				$work = $this->getMonthSum($userId, $monat, $jahr);
				$freizeit = $this->countFreizeit($userId, $jahr, $monat);
				$freizeit = $this->mulTime($workday, $freizeit);
				$soll = $this->getDebit($userId, $monat, $jahr);
				$urlaub = $this->countUrlaub($userId, $jahr, $monat);
				$days2 = $days - $urlaub;
				//arbeitszeit + übertrag vormonat
				$std = $this->getHours($userId, $monat, $jahr);
				//balance + freizeit
				//$std =  $this->addTime(-$freizeit, $std);
				//arbeitszeit soll - abgeleistete stunden
				$sek1 = $this->toSec($std);
				$sek2 = $this->toSec($soll);
				$sek1 = $sek1 - $sek2;
				$gesamt = $this->toTime($sek1);
				if($work == ''){
					return;
				}
				$monat++;
			}
		}
		while($actual > $monat){
			$query = "SELECT * FROM std_Monatsabschluss WHERE userId='$userId' AND monat='$monat'";
			$result = mysql_query($query) or die(mysql_error());
			if($res = mysql_fetch_assoc($result)){
				// $sql = "UPDATE Monatsabschluss SET stunden=SUBTIME(ADDTIME('$stunden', '$balance'), '$debit')
				// WHERE userId='$userId' AND monat='$monat'";
				$sql = "UPDATE std_Monatsabschluss SET stunden='$gesamt'
				WHERE userId='$userId' AND monat='$monat'";
			}
			else{
				$sql = "INSERT INTO std_Monatsabschluss VALUES"
								." ('', '$userId', '$monat', '$jahr', '$gesamt')";
			}
			mysql_query($sql) or die ($sql."--".mysql_error());
			//echo $sql."<--1<br/>";
			//return if there is no entry
			$days = $this->getWorkdays($monat, $jahr);
			$work = $this->getMonthSum($userId, $monat, $jahr);
			$freizeit = $this->countFreizeit($userId, $jahr, $monat);
			$freizeit = $this->mulTime($workday, $freizeit);
			$soll = $this->getDebit($userId, $monat, $jahr);
			$urlaub = $this->countUrlaub($userId, $jahr, $monat);
			$days2 = $days - $urlaub;
			//arbeitszeit + übertrag vormonat
			$std = $this->getHours($userId, $monat, $jahr);
			//balance + freizeit
			//$std =  $this->addTime(-$freizeit, $std);
			//arbeitszeit soll - abgeleistete stunden
			$gesamt = $this->addTime($std, -$soll);
			if($work == ''){
				return;
			}
			$monat++;
		}
		if($tmp <$monat){ 
			return;
		}
		$query = "SELECT * FROM std_Monatsabschluss WHERE userId='$userId' AND monat='$tmp'";
		$result = mysql_query($query) or die(mysql_error());
		if($res = mysql_fetch_assoc($result)){
			$sql = "UPDATE std_Monatsabschluss SET stunden='$gesamt'
			WHERE userId='$userId' AND monat='$tmp'";
		}
		else{
			$sql = "INSERT INTO std_Monatsabschluss VALUES"
							." ('', '$userId', '$tmp', '$jahr', '$gesamt')";
		}
		mysql_query($sql) or die ($sql."Persist Month:".mysql_error());
		//echo $sql."<--2<br/>";
	}


	/**
		*/
	public function reloadPage($userId, $monat, $jahr)
	{
		echo ("<br /><a href='".$_SERVER['SCRIPT_NAME']."?userId=$userId&monat=$monat&jahr=$jahr' title='Neu laden'>Neu laden</a>\n");
	}

	public function addTime($t1, $t2){
		// zerlegen der Stunde in die Bestandteile
		list($hour1, $min1, $sec) = split(':', $t1);
		$sek1 = $hour1 * 3600;
		if($sek1 < 0){
			$sek1 -= $min1 * 60 - $sec1;
		}
		else{
			$sek1 += $min1 * 60 + $sec1;
		}
		// zerlegen der Stunde in die Bestandteile
		list($hour2, $min2, $sec2) = split(':', $t2);
		$sek2 = $hour2 * 3600;
		if($sek2 < 0){
			$sek2 -= $min2 * 60 - $sec2;
		}
		else{
			$sek2 += $min2 * 60 + $sec2;
		}
		$sek = $sek1 + $sek2;
		$hour = 0;
		$min  = 0;

		if ($sek > 0){
			// Stunden abziehen
			while ($sek >= 3600)
			{
				$sek-= 3600;
				$hour++;
			}

			// Minuten abziehen
			while ($sek>= 60)
			{
				$sek-= 60;
				$min++;
			}
		}
		else{
			// Stunden abziehen
			while ($sek <= -3600)
			{
				$sek += 3600;
				$hour--;
			}

			// Minuten abziehen
			while ($sek <= -60)
			{
				$sek+= 60;
				$min++;
			}
			$sek = -$sek;
			if($hour == 0) return "-$hour:$min:$sek";
		}
		// Ergebnis :P
		return "$hour:$min:$sek";
	}


	public function subTime($t1, $t2){
		$check = 0;
		if ($t1 < $t2){
			$tmp = $t1;
			$t1 = $t2;
			$t2 = $tmp;
			$check = 1;
		}
		// zerlegen der Stunde in die Bestandteile
		list($hour1, $min1, $sek1) = split(':', $t1);
		$sek1 += $hour1 * 3600;
		$sek1 += $min1 * 60;
		// zerlegen der Stunde in die Bestandteile
		list($hour2, $min2, $sek2) = split(':', $t2);
		$sek2 += $hour2 * 3600;
		$sek2 += $min2 * 60;
		
		$sek = $sek1 - $sek2;
		$hour = 0;
		$min  = 0;
		if($check == 1) $sek = -$sek;
		if ($sek > 0){
			// Stunden abziehen
			while ($sek >= 3600)
			{
				$sek-= 3600;
				$hour++;
			}

			// Minuten abziehen
			while ($sek>= 60)
			{
				$sek-= 60;
				$min++;
			}
		}
		else{
			// Stunden abziehen
			while ($sek <= -3600)
			{
				$sek += 3600;
				$hour--;
			}

			// Minuten abziehen
			while ($sek <= -60)
			{
				$sek+= 60;
				$min--;
			}
		}

		$result = "$hour:$min";
		
		// Ergebnis :P
		return $result;

	}


	public function mulTime($stunden, $factor)
	{
		// zerlegen der Stunde in die Bestandteile
		//list($hour, $min, $sek) = split(':', $stunden);
		$tmp = explode(":", $stunden);
		$hour = $tmp[0];
		$min = $tmp[1];
		$sek = $tmp[2];
		// in Sekunden umrechnen
		$sekunden = $hour * 3600;
		$sekunden += $min * 60;
		// mit Faktor mutliplizieren
		$sekunden *= $factor;
		
		// reset
		$hour = 0;
		$min  = 0;

		// Stunden abziehen
		while ($sekunden >= 3600)
		{
			$sekunden -= 3600;
			$hour++;
		}

		// Minuten abziehen
		while ($sekunden >= 60)
		{
			$sekunden -= 60;
			$min++;
		}
		// Ergebnis :P
		$tmp[0] = $hour;
		$tmp[1] = $min;
		$tmp[2] = $sekunden;
		$tmp = implode(":", $tmp);
		return $tmp;
	}

	public function divTime($stunden, $factor)
	{
		// zerlegen der Stunde in die Bestandteile
		list($hour, $min, $sek) = split(':', $stunden);

		// in Sekunden umrechnen
		$sekunden = $hour * 3600;
		$sekunden += $min * 60;
		// mit Faktor mutliplizieren
		$sekunden /= $factor;

		// reset
		$hour = 0;
		$min  = 0;

		// Stunden abziehen
		while ($sekunden >= 3600)
		{
			$sekunden -= 3600;
			$hour++;
		}

		// Minuten abziehen
		while ($sekunden >= 60)
		{
			$sekunden -= 60;
			$min++;
		}
		// Ergebnis :P
		return "$hour:$min:$sek";
	}

	/**
	 */
	public function prevMonth($monat)
	{
		if ($monat < 2)
			return 12;

		return $monat-1;
	}

	/**
	 */
	public function nextMonth($monat)
	{
		if ($monat > 11)
			return 1;

		return $monat+1;
	}

	/**
	 */
	public function prevYear($monat, $jahr)
	{
		if ($monat > 1)
			return $jahr;

		return $jahr-1;
	}

	/**
	 */
	public function nextYear($monat, $jahr)
	{
		if ($monat<12)
			return $jahr;

		return $jahr+1;
	}

	public function showMonatsName($monat){
		switch($monat)
		{
			case(1):
				return "Januar";
			case(2):
				return "Februar";
			case(3):
				return "M&auml;rz";
			case(4):
				return "April";
			case(5):
				return "Mai";
			case(6):
				return "Juni";
			case(7):
				return "Juli";
			case(8):
				return "August";
			case(9):
				return "September";
			case(10):
				return "Oktober";
			case(11):
				return "November";
			case(12):
				return "Dezember";
		}
	}
	public function asTime($time){
		if (!strpbrk($time,":")){
			$tmp = array();
			$tmp[1] = $time;
			$tmp[2] = ":00";
			//			echo (implode($tmp)."<br>");
			$time = implode($tmp);
		}
		return $time;
	}
	public function updateDay($day, $begin, $end, $away, $comment){
	//2stellig in minuten + 4stellig in std+min
	if(strlen($away)== 2 || strlen($away)== 4){
		if(strlen($away)== 2){
			$away = "00:".$away.":00";
		}
		else{
			$away = $away."00";
		}
	}
	//2stellig in minuten + 4stellig in std+min
	if(strlen($begin)== 2 || strlen($begin)== 4){
		if(strlen($begin)== 2){
			$begin = "00:".$begin.":00";
		}
		else{
			$begin = $begin."00";
		}
	}
	//2stellig in minuten + 4stellig in std+min
	if(strlen($end)== 2 || strlen($end)== 4){
		if(strlen($end)== 2){
			$end = "00:".$end.":00";
		}
		else{
			$end = $end."00";
		}
	}
		$sql = "UPDATE std_Arbeitszeit SET Begin = '$begin', Ende = '$end', Abwesend = '$away', Bemerkung = '$comment'"
		. " WHERE id = '$day'";
		//echo $sql;
		mysql_query($sql) or die(mysql_error());
		return;
	}
	public function countDienstreise($userId, $jahr, $month){
		$sql = "SELECT * FROM std_Arbeitszeit WHERE MitarbeiterId='$userId' AND YEAR(Arbeitstag) = '$jahr'
		AND MONTH(Arbeitstag)='$month' AND Bemerkung='1' ORDER BY Arbeitstag";
		$result = mysql_query($sql) or die(mysql_error());
		return mysql_num_rows($result);
	}
	public function countUrlaub($userId, $jahr, $month){
		$sql = "SELECT * FROM std_Arbeitszeit WHERE MitarbeiterId='$userId' AND YEAR(Arbeitstag) = '$jahr'
		AND MONTH(Arbeitstag)='$month' AND Bemerkung='2' ORDER BY Arbeitstag";
		$result = mysql_query($sql) or die(mysql_error());
		return mysql_num_rows($result);
	}
	public function countKrank($userId, $jahr, $month){
		$sql = "SELECT * FROM std_Arbeitszeit WHERE MitarbeiterId='$userId' AND YEAR(Arbeitstag) = '$jahr'
		AND MONTH(Arbeitstag)='$month' AND Bemerkung='3' ORDER BY Arbeitstag";
		$result = mysql_query($sql) or die(mysql_error());
		return mysql_num_rows($result);
	}
	public function countFreizeit($userId, $jahr, $month){
		$sql = "SELECT * FROM std_Arbeitszeit WHERE MitarbeiterId='$userId' AND YEAR(Arbeitstag) = '$jahr'
		AND MONTH(Arbeitstag)='$month' AND Bemerkung='4' ORDER BY Arbeitstag";
		$result = mysql_query($sql) or die(mysql_error());
		return mysql_num_rows($result);
	}
	public function getCategoriesByUserId($userId){
		$sql = "SELECT g.name as name, g.id, mzg.id as cat FROM std_MitarbeiterZuGruppe mzg, std_gruppe g 
		WHERE mzg.id_mitarbeiter='$userId' 
		AND mzg.id_gruppe = g.id
		ORDER BY g.name";g
		
		$result = mysql_query($sql) or die("getCategoriesByUserId: ".mysql_error());
		return $result;
	}
	
	public function toSec($time){
		// zerlegen der Stunde in die Bestandteile
		list($hour, $min, $sek) = split(':', $time);

		// in Sekunden umrechnen
		$sekunden = $hour * 3600;
		$sekunden += $min * 60;
		$sekunden += $sek;
		return $sekunden;
	}
	
	public function toTime($sek){
		$hour = 0;
		$min = 0;
		if ($sek > 0){
			// Stunden abziehen
			while ($sek >= 3600)
			{
				$sek-= 3600;
				$hour++;
			}
	
			// Minuten abziehen
			while ($sek>= 60)
			{
				$sek-= 60;
				$min++;
			}
		}
		else{
			// Stunden abziehen
			while ($sek <= -3600)
			{
				$sek += 3600;
				$hour--;
			}
	
			// Minuten abziehen
			while ($sek <= -60)
			{
				$sek+= 60;
				$min++;
			}
			$sek = -$sek;
			if($hour == 0) return "-$hour:$min:$sek";
		}
		// Ergebnis :P
		return "$hour:$min:$sek";
	}
	
	public function std_getMA(){
		$sql = "SELECT * FROM std_mitarbeiter";
		$result = mysql_query($sql) or die(mysql_error());
		return $result;
	}

}
